E cient User space Protocol Implementations with QoS Guarantees using Real-time Upcalls

نویسندگان

  • R. Gopalakrishnan
  • Gurudatta M. Parulkar
چکیده

Real-time upcalls (rtus) are an operating systems mechanism to provide quality-of-service (QoS) guarantees to network applications, and to e ciently implement protocols in user space with (QoS) guarantees. Traditionally, threads (and real-time extensions to threads) have been used to structure concurrent activities in user space protocol implementations. However, preemptive scheduling required for real-time threads leads to excessive context switching, and introduces the need for expensive concurrency control mechanisms such as locking. The rtu mechanism exploits the iterative nature of protocol processing to eliminate the need for locking, and reduce asynchronous preemption, while ensuring real-time operation. In addition to e ciency, eliminating the need for concurrency control considerably simpli es protocol code. rtus have been implemented in the NetBSD OS on the Sparc and Pentium platforms. We used the rtu mechanism to implement a sender and a receiver program that communicate using udp sockets over 155Mbps atm, and compared the throughput with that obtained when rtus are not used. Our results show that the rtu based programs maintain the same throughput regardless of other system activities. Without the rtu mechanism, background load reduces throughput by as much as 80%. Using the rtu mechanism, total network bandwidth can be partitioned among di erent udp streams, and delivered to user programs even with background system load. We have also implemented the tcp protocol in user space using the rtu mechanism. For each tcp connection, rtus are setup for performing tcp output, input, and timer processing functions. The use of rtus, in conjunction with shared memory between kernel and user processes for data movement, and the ability of the atm adaptor driver to separate headers and data, makes our user level tcp implementation the most e cient one that we know of for providing QoS guarantees within the endsystem.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Eecient User Space Protocol Implementations with Qos Guarantees Using Real-time Upcalls

Real-time upcalls (rtus) are an operating systems mechanism to provide quality-of-service (QoS) guarantees to network applications, and to eeciently implement protocols in user space with (QoS) guarantees. Traditionally, threads (and real-time extensions to threads) have been used to structure concurrent activities in user space protocol implementations. However, preemptive scheduling required ...

متن کامل

cient User - level I / O in the ARX Real - Time Operating System ?

User-level I/O gets increasingly important for embedded realtime applications, since it can allow programmers to write exible and e cient device drivers for proprietary devices. To support user-level I/O for embedded systems, an operating system must provide a mechanism to deliver an external interrupt from an I/O device to a process in a predictable and e cient manner. In this paper, we propos...

متن کامل

Efficient User-Level I/O in the ARX Real-Time Operating System

User-level I/O gets increasingly important for embedded real-time applications, since it can allow programmers to write exible and e cient device drivers for proprietary devices. To support user-level I/O for embedded systems, an operating system must provide a mechanism to deliver an external interrupt from an I/O device to a process in a predictable and e cient manner. In this paper, we propo...

متن کامل

Quality of service support for protocol processing within endsystems

We describe a framework for providing quality-of-service (QoS) guarantees within the endsystem for networked multimedia applications. There are four components in this framework namely|QoS speciication, QoS mapping, QoS enforcement, and protocol implementation. QoS speciications are at a high level, and use a small number of parameters to allow applications greater ease in specifying their requ...

متن کامل

Eecient User-level I/o in the Arx Real-time Operating System ?

User-level I/O gets increasingly important for embedded real-time applications, since it can allow programmers to write exible and eecient device drivers for proprietary devices. To support user-level I/O for embedded systems, an operating system must provide a mechanism to deliver an external interrupt from an I/O device to a process in a predictable and eecient manner. In this paper, we propo...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2003